//###########################################################################
//
// FILE:    fft_hann_Q31.h
//
// TITLE:   Fixed Point fft Hann Window header file.
//
// VERSION: 1.0.0
//
// DATE:    2025-01-15
//
//###########################################################################
// $Copyright:
// Copyright (C) 2024 Geehy Semiconductor - http://www.geehy.com/
//
// You may not use this file except in compliance with the
// GEEHY COPYRIGHT NOTICE (GEEHY SOFTWARE PACKAGE LICENSE).
//
// The program is only for reference, which is distributed in the hope
// that it will be useful and instructional for customers to develop
// their software. Unless required by applicable law or agreed to in
// writing, the program is distributed on an "AS IS" BASIS, WITHOUT
// ANY WARRANTY OR CONDITIONS OF ANY KIND, either express or implied.
// See the GEEHY SOFTWARE PACKAGE LICENSE for the governing permissions
// and limitations under the License.
// $
//###########################################################################

#ifndef FFT_HANN_Q31_H
#define FFT_HANN_Q31_H

#define HANN4096 {\
             0,           1264,           5056,          11375,          20223,          31598,          45501,          61932, \
         80890,         102376,         126390,         152931,         182000,         213596,         247720,         284371, \
        323549,         365254,         409486,         456245,         505531,         557343,         611682,         668548, \
        727939,         789857,         854301,         921271,         990766,        1062787,        1137333,        1214404, \
       1294001,        1376122,        1460768,        1547938,        1637632,        1729851,        1824593,        1921859, \
       2021648,        2123960,        2228795,        2336152,        2446032,        2558434,        2673358,        2790804, \
       2910770,        3033258,        3158267,        3285795,        3415844,        3548413,        3683502,        3821109, \
       3961235,        4103880,        4249043,        4396724,        4546922,        4699638,        4854870,        5012619, \
       5172884,        5335664,        5500960,        5668771,        5839096,        6011935,        6187288,        6365154, \
       6545534,        6728425,        6913829,        7101744,        7292170,        7485107,        7680554,        7878511, \
       8078978,        8281953,        8487436,        8695428,        8905926,        9118932,        9334444,        9552462, \
       9772985,        9996013,       10221545,       10449582,       10680121,       10913163,       11148707,       11386753, \
      11627300,       11870348,       12115895,       12363942,       12614487,       12867531,       13123072,       13381110, \
      13641644,       13904675,       14170200,       14438220,       14708733,       14981740,       15257240,       15535231, \
      15815714,       16098687,       16384150,       16672103,       16962544,       17255473,       17550889,       17848792, \
      18149181,       18452054,       18757412,       19065254,       19375579,       19688386,       20003675,       20321444, \
      20641693,       20964422,       21289629,       21617314,       21947476,       22280114,       22615227,       22952815, \
      23292877,       23635412,       23980419,       24327897,       24677846,       25030265,       25385152,       25742508, \
      26102331,       26464620,       26829375,       27196595,       27566279,       27938425,       28313033,       28690103, \
      29069633,       29451623,       29836070,       30222976,       30612338,       31004156,       31398429,       31795156, \
      32194336,       32595968,       33000051,       33406584,       33815566,       34226997,       34640875,       35057199, \
      35475968,       35897182,       36320839,       36746939,       37175480,       37606461,       38039881,       38475740, \
      38914036,       39354769,       39797936,       40243538,       40691573,       41142039,       41594937,       42050265, \
      42508022,       42968206,       43430817,       43895854,       44363315,       44833200,       45305507,       45780235, \
      46257383,       46736950,       47218935,       47703337,       48190154,       48679385,       49171030,       49665087, \
      50161555,       50660433,       51161719,       51665412,       52171512,       52680017,       53190926,       53704237, \
      54219950,       54738063,       55258575,       55781484,       56306791,       56834492,       57364588,       57897076, \
      58431956,       58969226,       59508885,       60050932,       60595366,       61142184,       61691387,       62242972, \
      62796939,       63353285,       63912010,       64473113,       65036592,       65602445,       66170672,       66741271, \
      67314240,       67889579,       68467286,       69047360,       69629799,       70214602,       70801767,       71391294, \
      71983180,       72577425,       73174027,       73772984,       74374296,       74977960,       75583976,       76192341, \
      76803055,       77416116,       78031523,       78649274,       79269367,       79891802,       80516576,       81143689, \
      81773139,       82404924,       83039042,       83675493,       84314275,       84955387,       85598826,       86244592, \
      86892682,       87543096,       88195831,       88850887,       89508261,       90167952,       90829959,       91494280, \
      92160914,       92829858,       93501112,       94174673,       94850540,       95528713,       96209188,       96891964, \
      97577040,       98264414,       98954085,       99646051,      100340310,      101036860,      101735701,      102436830, \
     103140245,      103845946,      104553930,      105264195,      105976741,      106691565,      107408666,      108128042, \
     108849691,      109573611,      110299802,      111028260,      111758985,      112491975,      113227228,      113964742, \
     114704516,      115446548,      116190835,      116937377,      117686172,      118437217,      119190511,      119946053, \
     120703840,      121463871,      122226143,      122990656,      123757407,      124526394,      125297617,      126071072, \
     126846758,      127624673,      128404816,      129187184,      129971776,      130758590,      131547624,      132338876, \
     133132344,      133928027,      134725922,      135526028,      136328343,      137132865,      137939591,      138748521, \
     139559652,      140372982,      141188510,      142006233,      142826150,      143648258,      144472556,      145299042, \
     146127713,      146958568,      147791605,      148626822,      149464217,      150303788,      151145533,      151989450, \
     152835538,      153683793,      154534214,      155386799,      156241546,      157098453,      157957519,      158818740, \
     159682115,      160547642,      161415319,      162285144,      163157114,      164031229,      164907485,      165785880, \
     166666414,      167549082,      168433884,      169320818,      170209880,      171101070,      171994385,      172889823, \
     173787381,      174687058,      175588852,      176492761,      177398781,      178306912,      179217151,      180129496, \
     181043945,      181960495,      182879145,      183799892,      184722734,      185647669,      186574695,      187503810, \
     188435011,      189368296,      190303664,      191241111,      192180635,      193122236,      194065909,      195011653, \
     195959466,      196909346,      197861290,      198815296,      199771361,      200729485,      201689663,      202651895, \
     203616177,      204582508,      205550885,      206521306,      207493768,      208468270,      209444809,      210423383, \
     211403989,      212386626,      213371290,      214357980,      215346693,      216337427,      217330179,      218324948, \
     219321730,      220320524,      221321327,      222324137,      223328952,      224335768,      225344584,      226355398, \
     227368206,      228383007,      229399799,      230418578,      231439342,      232462090,      233486818,      234513524, \
     235542206,      236572861,      237605487,      238640082,      239676642,      240715166,      241755652,      242798096, \
     243842496,      244888850,      245937156,      246987410,      248039611,      249093755,      250149841,      251207866, \
     252267828,      253329723,      254393550,      255459306,      256526988,      257596594,      258668121,      259741568, \
     260816930,      261894207,      262973395,      264054492,      265137494,      266222401,      267309208,      268397915, \
     269488517,      270581012,      271675398,      272771673,      273869833,      274969877,      276071801,      277175602, \
     278281279,      279388829,      280498249,      281609537,      282722689,      283837703,      284954578,      286073309, \
     287193894,      288316332,      289440618,      290566751,      291694727,      292824545,      293956201,      295089693, \
     296225018,      297362174,      298501157,      299641966,      300784597,      301929047,      303075315,      304223397, \
     305373290,      306524993,      307678502,      308833814,      309990927,      311149838,      312310545,      313473044, \
     314637333,      315803409,      316971269,      318140911,      319312332,      320485529,      321660500,      322837240, \
     324015749,      325196023,      326378059,      327561855,      328747407,      329934713,      331123770,      332314576, \
     333507127,      334701421,      335897454,      337095225,      338294730,      339495966,      340698931,      341903622, \
     343110035,      344318169,      345528020,      346739586,      347952862,      349167848,      350384539,      351602934, \
     352823028,      354044820,      355268306,      356493484,      357720350,      358948901,      360179136,      361411050, \
     362644642,      363879908,      365116844,      366355449,      367595720,      368837653,      370081245,      371326494, \
     372573396,      373821950,      375072151,      376323997,      377577485,      378832612,      380089374,      381347770, \
     382607796,      383869449,      385132726,      386397624,      387664141,      388932272,      390202016,      391473369, \
     392746329,      394020891,      395297054,      396574814,      397854168,      399135113,      400417647,      401701766, \
     402987467,      404274747,      405563603,      406854032,      408146031,      409439597,      410734727,      412031418, \
     413329667,      414629471,      415930826,      417233730,      418538180,      419844172,      421151703,      422460771, \
     423771372,      425083503,      426397162,      427712344,      429029047,      430347269,      431667004,      432988252, \
     434311008,      435635269,      436961033,      438288295,      439617054,      440947306,      442279047,      443612275, \
     444946987,      446283178,      447620847,      448959990,      450300604,      451642686,      452986232,      454331240, \
     455677706,      457025627,      458375000,      459725821,      461078088,      462431798,      463786946,      465143531, \
     466501549,      467860996,      469221869,      470584166,      471947882,      473313016,      474679563,      476047520, \
     477416884,      478787653,      480159821,      481533388,      482908348,      484284700,      485662439,      487041563, \
     488422068,      489803951,      491187209,      492571838,      493957835,      495345198,      496733922,      498124004, \
     499515442,      500908231,      502302370,      503697853,      505094678,      506492843,      507892342,      509293174, \
     510695335,      512098821,      513503629,      514909756,      516317199,      517725955,      519136019,      520547389, \
     521960061,      523374033,      524789300,      526205859,      527623707,      529042842,      530463258,      531884954, \
     533307925,      534732168,      536157681,      537584459,      539012499,      540441798,      541872353,      543304160, \
     544737215,      546171517,      547607060,      549043841,      550481858,      551921107,      553361585,      554803287, \
     556246211,      557690354,      559135711,      560582280,      562030057,      563479039,      564929222,      566380603, \
     567833178,      569286944,      570741898,      572198036,      573655355,      575113852,      576573522,      578034362, \
     579496370,      580959541,      582423872,      583889360,      585356002,      586823793,      588292730,      589762810, \
     591234030,      592706385,      594179873,      595654490,      597130233,      598607098,      600085081,      601564179, \
     603044389,      604525707,      606008130,      607491654,      608976275,      610461991,      611948797,      613436691, \
     614925668,      616415726,      617906860,      619399067,      620892344,      622386687,      623882092,      625378557, \
     626876077,      628374649,      629874270,      631374936,      632876643,      634379388,      635883167,      637387978, \
     638893815,      640400677,      641908558,      643417456,      644927367,      646438288,      647950215,      649463144, \
     650977072,      652491995,      654007910,      655524813,      657042701,      658561570,      660081416,      661602236, \
     663124026,      664646783,      666170504,      667695183,      669220819,      670747407,      672274944,      673803425, \
     675332849,      676863210,      678394506,      679926732,      681459886,      682993963,      684528960,      686064873, \
     687601699,      689139434,      690678075,      692217617,      693758058,      695299393,      696841619,      698384732, \
     699928729,      701473607,      703019360,      704565986,      706113482,      707661843,      709211066,      710761147, \
     712312082,      713863868,      715416502,      716969979,      718524297,      720079450,      721635436,      723192251, \
     724749891,      726308353,      727867633,      729427727,      730988632,      732550343,      734112858,      735676173, \
     737240283,      738805186,      740370877,      741937352,      743504610,      745072644,      746641452,      748211031, \
     749781375,      751352483,      752924349,      754496971,      756070344,      757644465,      759219331,      760794936, \
     762371279,      763948354,      765526159,      767104690,      768683942,      770263913,      771844598,      773425994, \
     775008096,      776590903,      778174408,      779758610,      781343503,      782929085,      784515352,      786102300, \
     787689924,      789278222,      790867190,      792456824,      794047120,      795638075,      797229684,      798821944, \
     800414851,      802008402,      803602593,      805197420,      806792878,      808388966,      809985678,      811583011, \
     813180961,      814779524,      816378698,      817978477,      819578858,      821179838,      822781412,      824383577, \
     825986329,      827589664,      829193579,      830798070,      832403132,      834008763,      835614958,      837221714, \
     838829026,      840436892,      842045307,      843654267,      845263769,      846873809,      848484383,      850095487, \
     851707118,      853319271,      854931944,      856545131,      858158830,      859773037,      861387747,      863002957, \
     864618663,      866234862,      867851549,      869468721,      871086374,      872704503,      874323107,      875942179, \
     877561717,      879181718,      880802176,      882423088,      884044451,      885666260,      887288513,      888911204, \
     890534330,      892157888,      893781873,      895406281,      897031110,      898656355,      900282011,      901908077, \
     903534546,      905161417,      906788684,      908416344,      910044394,      911672829,      913301646,      914930840, \
     916560408,      918190346,      919820650,      921451317,      923082342,      924713722,      926345453,      927977531, \
     929609952,      931242712,      932875808,      934509235,      936142991,      937777070,      939411469,      941046184, \
     942681212,      944316549,      945952190,      947588132,      949224371,      950860903,      952497724,      954134831, \
     955772219,      957409886,      959047826,      960686036,      962324512,      963963250,      965602247,      967241499, \
     968881001,      970520750,      972160742,      973800974,      975441440,      977082138,      978723064,      980364213, \
     982005582,      983647167,      985288964,      986930970,      988573180,      990215590,      991858197,      993500997, \
     995143985,      996787159,      998430514,     1000074046,     1001717751,     1003361626,     1005005667,     1006649870, \
    1008294230,     1009938745,     1011583410,     1013228221,     1014873175,     1016518267,     1018163494,     1019808852, \
    1021454337,     1023099945,     1024745672,     1026391514,     1028037468,     1029683530,     1031329695,     1032975960, \
    1034622321,     1036268774,     1037915316,     1039561941,     1041208648,     1042855430,     1044502286,     1046149210, \
    1047796200,     1049443250,     1051090358,     1052737519,     1054384729,     1056031985,     1057679283,     1059326618, \
    1060973987,     1062621387,     1064268812,     1065916260,     1067563727,     1069211208,     1070858699,     1072506198, \
    1074153699,     1075801199,     1077448695,     1079096181,     1080743655,     1082391113,     1084038550,     1085685963, \
    1087333348,     1088980701,     1090628018,     1092275296,     1093922529,     1095569715,     1097216850,     1098863930, \
    1100510950,     1102157907,     1103804798,     1105451617,     1107098362,     1108745029,     1110391613,     1112038111, \
    1113684518,     1115330832,     1116977047,     1118623161,     1120269170,     1121915068,     1123560854,     1125206522, \
    1126852068,     1128497490,     1130142783,     1131787943,     1133432967,     1135077849,     1136722588,     1138367178, \
    1140011616,     1141655898,     1143300021,     1144943979,     1146587770,     1148231389,     1149874833,     1151518098, \
    1153161180,     1154804074,     1156446778,     1158089287,     1159731598,     1161373706,     1163015607,     1164657299, \
    1166298777,     1167940036,     1169581074,     1171221886,     1172862469,     1174502819,     1176142931,     1177782802, \
    1179422428,     1181061805,     1182700930,     1184339798,     1185978406,     1187616750,     1189254825,     1190892629, \
    1192530157,     1194167405,     1195804369,     1197441047,     1199077433,     1200713524,     1202349316,     1203984805, \
    1205619988,     1207254860,     1208889417,     1210523657,     1212157575,     1213791167,     1215424429,     1217057357, \
    1218689948,     1220322198,     1221954103,     1223585659,     1225216862,     1226847708,     1228478194,     1230108316, \
    1231738070,     1233367451,     1234996457,     1236625083,     1238253326,     1239881182,     1241508646,     1243135715, \
    1244762386,     1246388654,     1248014515,     1249639966,     1251265004,     1252889623,     1254513820,     1256137592, \
    1257760934,     1259383843,     1261006316,     1262628347,     1264249933,     1265871072,     1267491757,     1269111987, \
    1270731757,     1272351063,     1273969901,     1275588268,     1277206160,     1278823572,     1280440502,     1282056946, \
    1283672899,     1285288357,     1286903318,     1288517777,     1290131730,     1291745174,     1293358104,     1294970518, \
    1296582410,     1298193778,     1299804618,     1301414925,     1303024697,     1304633928,     1306242616,     1307850757, \
    1309458346,     1311065381,     1312671857,     1314277770,     1315883117,     1317487894,     1319092098,     1320695723, \
    1322298767,     1323901226,     1325503096,     1327104374,     1328705055,     1330305135,     1331904612,     1333503481, \
    1335101738,     1336699380,     1338296403,     1339892803,     1341488577,     1343083720,     1344678229,     1346272100, \
    1347865330,     1349457914,     1351049849,     1352641132,     1354231757,     1355821723,     1357411024,     1358999658, \
    1360587620,     1362174906,     1363761514,     1365347438,     1366932677,     1368517225,     1370101079,     1371684235, \
    1373266690,     1374848440,     1376429481,     1378009809,     1379589421,     1381168313,     1382746481,     1384323922, \
    1385900631,     1387476606,     1389051842,     1390626336,     1392200083,     1393773081,     1395345326,     1396916813, \
    1398487540,     1400057502,     1401626695,     1403195117,     1404762763,     1406329630,     1407895714,     1409461012, \
    1411025518,     1412589231,     1414152146,     1415714260,     1417275569,     1418836069,     1420395756,     1421954627, \
    1423512679,     1425069907,     1426626308,     1428181878,     1429736614,     1431290511,     1432843567,     1434395778, \
    1435947139,     1437497648,     1439047300,     1440596093,     1442144021,     1443691083,     1445237273,     1446782589, \
    1448327026,     1449870582,     1451413252,     1452955033,     1454495922,     1456035913,     1457575005,     1459113194, \
    1460650475,     1462186845,     1463722300,     1465256838,     1466790454,     1468323144,     1469854906,     1471385735, \
    1472915627,     1474444580,     1475972590,     1477499653,     1479025765,     1480550923,     1482075124,     1483598363, \
    1485120637,     1486641942,     1488162276,     1489681634,     1491200013,     1492717409,     1494233818,     1495749238, \
    1497263664,     1498777093,     1500289521,     1501800945,     1503311362,     1504820767,     1506329157,     1507836529, \
    1509342879,     1510848203,     1512352498,     1513855761,     1515357988,     1516859174,     1518359318,     1519858415, \
    1521356462,     1522853455,     1524349390,     1525844265,     1527338075,     1528830818,     1530322489,     1531813085, \
    1533302603,     1534791039,     1536278389,     1537764650,     1539249820,     1540733893,     1542216866,     1543698737, \
    1545179502,     1546659156,     1548137697,     1549615122,     1551091426,     1552566606,     1554040659,     1555513581, \
    1556985369,     1558456020,     1559925529,     1561393893,     1562861110,     1564327175,     1565792085,     1567255837, \
    1568718427,     1570179851,     1571640107,     1573099190,     1574557098,     1576013827,     1577469374,     1578923735, \
    1580376906,     1581828884,     1583279667,     1584729249,     1586177629,     1587624803,     1589070766,     1590515517, \
    1591959050,     1593401364,     1594842454,     1596282318,     1597720951,     1599158351,     1600594514,     1602029436, \
    1603463115,     1604895547,     1606326728,     1607756655,     1609185326,     1610612735,     1612038881,     1613463759, \
    1614887367,     1616309701,     1617730757,     1619150533,     1620569025,     1621986229,     1623402143,     1624816762, \
    1626230085,     1627642106,     1629052824,     1630462234,     1631870333,     1633277119,     1634682587,     1636086735, \
    1637489559,     1638891055,     1640291221,     1641690054,     1643087549,     1644483704,     1645878515,     1647271979, \
    1648664093,     1650054853,     1651444257,     1652832301,     1654218981,     1655604295,     1656988239,     1658370809, \
    1659752004,     1661131819,     1662510251,     1663887296,     1665262953,     1666637217,     1668010085,     1669381554, \
    1670751621,     1672120282,     1673487534,     1674853375,     1676217800,     1677580807,     1678942393,     1680302553, \
    1681661286,     1683018587,     1684374455,     1685728884,     1687081873,     1688433418,     1689783515,     1691132162, \
    1692479356,     1693825093,     1695169371,     1696512185,     1697853533,     1699193412,     1700531819,     1701868749, \
    1703204201,     1704538172,     1705870657,     1707201653,     1708531159,     1709859170,     1711185684,     1712510696, \
    1713834205,     1715156208,     1716476700,     1717795678,     1719113141,     1720429084,     1721743505,     1723056400, \
    1724367767,     1725677602,     1726985902,     1728292664,     1729597885,     1730901562,     1732203692,     1733504272, \
    1734803299,     1736100769,     1737396680,     1738691028,     1739983811,     1741275026,     1742564669,     1743852737, \
    1745139228,     1746424139,     1747707465,     1748989205,     1750269355,     1751547913,     1752824874,     1754100237, \
    1755373999,     1756646155,     1757916704,     1759185642,     1760452967,     1761718674,     1762982762,     1764245228, \
    1765506068,     1766765279,     1768022858,     1769278804,     1770533111,     1771785779,     1773036802,     1774286180, \
    1775533908,     1776779984,     1778024406,     1779267168,     1780508270,     1781747709,     1782985480,     1784221581, \
    1785456010,     1786688764,     1787919838,     1789149232,     1790376941,     1791602963,     1792827296,     1794049935, \
    1795270878,     1796490123,     1797707666,     1798923505,     1800137637,     1801350058,     1802560767,     1803769760, \
    1804977034,     1806182586,     1807386414,     1808588515,     1809788886,     1810987524,     1812184427,     1813379591, \
    1814573014,     1815764692,     1816954624,     1818142806,     1819329236,     1820513910,     1821696826,     1822877981, \
    1824057373,     1825234998,     1826410854,     1827584938,     1828757248,     1829927779,     1831096531,     1832263499, \
    1833428682,     1834592077,     1835753680,     1836913489,     1838071501,     1839227714,     1840382125,     1841534731, \
    1842685530,     1843834518,     1844981693,     1846127052,     1847270594,     1848412314,     1849552210,     1850690280, \
    1851826520,     1852960929,     1854093504,     1855224241,     1856353138,     1857480193,     1858605403,     1859728765, \
    1860850277,     1861969936,     1863087739,     1864203683,     1865317767,     1866429987,     1867540341,     1868648827, \
    1869755440,     1870860180,     1871963043,     1873064027,     1874163129,     1875260347,     1876355678,     1877449119, \
    1878540668,     1879630323,     1880718080,     1881803937,     1882887892,     1883969942,     1885050085,     1886128317, \
    1887204637,     1888279042,     1889351529,     1890422097,     1891490741,     1892557460,     1893622252,     1894685113, \
    1895746042,     1896805035,     1897862091,     1898917207,     1899970380,     1901021608,     1902070888,     1903118218, \
    1904163595,     1905207018,     1906248483,     1907287988,     1908325531,     1909361109,     1910394719,     1911426360, \
    1912456029,     1913483723,     1914509441,     1915533179,     1916554935,     1917574707,     1918592493,     1919608289, \
    1920622094,     1921633905,     1922643720,     1923651537,     1924657353,     1925661165,     1926662972,     1927662771, \
    1928660560,     1929656335,     1930650096,     1931641840,     1932631563,     1933619265,     1934604942,     1935588593, \
    1936570215,     1937549805,     1938527362,     1939502882,     1940476365,     1941447807,     1942417206,     1943384560, \
    1944349867,     1945313125,     1946274330,     1947233481,     1948190576,     1949145612,     1950098587,     1951049499, \
    1951998346,     1952945125,     1953889834,     1954832471,     1955773034,     1956711520,     1957647927,     1958582254, \
    1959514497,     1960444655,     1961372726,     1962298707,     1963222596,     1964144391,     1965064089,     1965981690, \
    1966897190,     1967810587,     1968721879,     1969631064,     1970538140,     1971443105,     1972345956,     1973246692, \
    1974145310,     1975041809,     1975936185,     1976828438,     1977718564,     1978606562,     1979492430,     1980376166, \
    1981257767,     1982137232,     1983014558,     1983889743,     1984762786,     1985633684,     1986502435,     1987369037, \
    1988233489,     1989095787,     1989955931,     1990813917,     1991669745,     1992523411,     1993374914,     1994224253, \
    1995071424,     1995916426,     1996759258,     1997599916,     1998438399,     1999274705,     2000108833,     2000940779, \
    2001770543,     2002598122,     2003423514,     2004246717,     2005067730,     2005886550,     2006703175,     2007517605, \
    2008329836,     2009139866,     2009947695,     2010753319,     2011556737,     2012357948,     2013156949,     2013953738, \
    2014748314,     2015540674,     2016330818,     2017118742,     2017904445,     2018687925,     2019469181,     2020248210, \
    2021025011,     2021799582,     2022571921,     2023342026,     2024109895,     2024875527,     2025638920,     2026400072, \
    2027158981,     2027915646,     2028670064,     2029422234,     2030172154,     2030919822,     2031665237,     2032408397, \
    2033149300,     2033887944,     2034624328,     2035358450,     2036090307,     2036819899,     2037547224,     2038272280, \
    2038995065,     2039715578,     2040433816,     2041149779,     2041863464,     2042574870,     2043283995,     2043990837, \
    2044695395,     2045397668,     2046097653,     2046795348,     2047490753,     2048183866,     2048874684,     2049563207, \
    2050249432,     2050933359,     2051614985,     2052294308,     2052971328,     2053646043,     2054318451,     2054988550, \
    2055656339,     2056321816,     2056984981,     2057645830,     2058304363,     2058960578,     2059614474,     2060266049, \
    2060915301,     2061562229,     2062206831,     2062849107,     2063489054,     2064126671,     2064761956,     2065394908, \
    2066025525,     2066653807,     2067279750,     2067903355,     2068524619,     2069143542,     2069760121,     2070374355, \
    2070986242,     2071595782,     2072202973,     2072807813,     2073410301,     2074010436,     2074608216,     2075203639, \
    2075796705,     2076387411,     2076975758,     2077561742,     2078145363,     2078726620,     2079305510,     2079882033, \
    2080456188,     2081027972,     2081597385,     2082164425,     2082729092,     2083291382,     2083851297,     2084408833, \
    2084963989,     2085516765,     2086067159,     2086615170,     2087160796,     2087704037,     2088244890,     2088783355, \
    2089319430,     2089853114,     2090384406,     2090913305,     2091439809,     2091963917,     2092485628,     2093004941, \
    2093521854,     2094036366,     2094548476,     2095058183,     2095565485,     2096070382,     2096572872,     2097072954, \
    2097570627,     2098065890,     2098558741,     2099049179,     2099537204,     2100022813,     2100506007,     2100986783, \
    2101465141,     2101941079,     2102414597,     2102885693,     2103354366,     2103820615,     2104284439,     2104745837, \
    2105204807,     2105661350,     2106115462,     2106567145,     2107016396,     2107463214,     2107907599,     2108349549, \
    2108789063,     2109226141,     2109660781,     2110092982,     2110522743,     2110950063,     2111374942,     2111797377, \
    2112217369,     2112634916,     2113050017,     2113462671,     2113872878,     2114280636,     2114685944,     2115088802, \
    2115489208,     2115887161,     2116282661,     2116675707,     2117066297,     2117454431,     2117840108,     2118223327, \
    2118604086,     2118982386,     2119358226,     2119731603,     2120102518,     2120470970,     2120836957,     2121200479, \
    2121561536,     2121920125,     2122276247,     2122629900,     2122981084,     2123329798,     2123676041,     2124019812, \
    2124361110,     2124699935,     2125036286,     2125370162,     2125701562,     2126030485,     2126356931,     2126680899, \
    2127002388,     2127321398,     2127637927,     2127951975,     2128263541,     2128572624,     2128879224,     2129183340, \
    2129484971,     2129784117,     2130080777,     2130374950,     2130666635,     2130955832,     2131242540,     2131526758, \
    2131808486,     2132087723,     2132364469,     2132638722,     2132910482,     2133179749,     2133446522,     2133710799, \
    2133972582,     2134231868,     2134488658,     2134742950,     2134994745,     2135244041,     2135490838,     2135735135, \
    2135976933,     2136216229,     2136453024,     2136687318,     2136919109,     2137148396,     2137375181,     2137599461, \
    2137821237,     2138040507,     2138257272,     2138471531,     2138683283,     2138892529,     2139099266,     2139303495, \
    2139505216,     2139704428,     2139901130,     2140095322,     2140287004,     2140476175,     2140662834,     2140846982, \
    2141028617,     2141207740,     2141384350,     2141558446,     2141730028,     2141899096,     2142065649,     2142229687, \
    2142391210,     2142550217,     2142706707,     2142860681,     2143012138,     2143161078,     2143307500,     2143451404, \
    2143592790,     2143731657,     2143868005,     2144001833,     2144133142,     2144261931,     2144388200,     2144511948, \
    2144633175,     2144751881,     2144868066,     2144981729,     2145092870,     2145201489,     2145307585,     2145411159, \
    2145512209,     2145610737,     2145706741,     2145800221,     2145891177,     2145979610,     2146065518,     2146148901, \
    2146229760,     2146308094,     2146383903,     2146457186,     2146527944,     2146596177,     2146661884,     2146725064, \
    2146785719,     2146843848,     2146899450,     2146952526,     2147003075,     2147051097,     2147096593,     2147139561, \
    2147180003,     2147217917,     2147253305,     2147286165,     2147316497,     2147344302,     2147369580,     2147392330, \
    2147412552,     2147430247,     2147445413,     2147458053,     2147468164,     2147475747,     2147480803,     2147483331, \
} 

#define HANN2048 {\
             0,           5058,          20233,          45523,          80930,         126452,         182089,         247841, \
        323707,         409686,         505778,         611981,         728295,         854718,         991250,        1137889, \
       1294633,        1461481,        1638432,        1825484,        2022635,        2229883,        2447227,        2674664, \
       2912192,        3159809,        3417512,        3685300,        3963169,        4251118,        4549142,        4857241, \
       5175409,        5503645,        5841946,        6190308,        6548728,        6917203,        7295729,        7684302, \
       8082920,        8491578,        8910271,        9338998,        9777753,       10226532,       10685330,       11154145, \
      11632971,       12121804,       12620638,       13129470,       13648295,       14177108,       14715903,       15264676, \
      15823422,       16392135,       16970809,       17559441,       18158023,       18766550,       19385017,       20013418, \
      20651746,       21299996,       21958162,       22626237,       23304216,       23992091,       24689857,       25397506, \
      26115032,       26842429,       27579689,       28326805,       29083771,       29850580,       30627223,       31413695, \
      32209986,       33016091,       33832000,       34657708,       35493205,       36338484,       37193537,       38058356, \
      38932933,       39817260,       40711327,       41615127,       42528652,       43451892,       44384839,       45327485, \
      46279819,       47241834,       48213521,       49194869,       50185870,       51186515,       52196794,       53216697, \
      54246215,       55285339,       56334058,       57392362,       58460243,       59537688,       60624690,       61721236, \
      62827317,       63942923,       65068042,       66202665,       67346780,       68500378,       69663446,       70835974, \
      72017951,       73209366,       74410208,       75620465,       76840125,       78069179,       79307612,       80555416, \
      81812576,       83079082,       84354922,       85640083,       86934554,       88238321,       89551374,       90873700, \
      92205286,       93546119,       94896188,       96255478,       97623978,       99001675,      100388555,      101784606, \
     103189814,      104604167,      106027650,      107460250,      108901955,      110352749,      111812621,      113281555, \
     114759538,      116246557,      117742596,      119247643,      120761682,      122284700,      123816682,      125357614, \
     126907482,      128466270,      130033964,      131610549,      133196010,      134790333,      136393503,      138005503, \
     139626320,      141255938,      142894341,      144541514,      146197442,      147862109,      149535498,      151217596, \
     152908385,      154607850,      156315974,      158032742,      159758137,      161492144,      163234746,      164985925, \
     166745667,      168513954,      170290770,      172076098,      173869921,      175672222,      177482984,      179302190, \
     181129824,      182965867,      184810303,      186663114,      188524283,      190393792,      192271623,      194157759, \
     196052182,      197954875,      199865818,      201784996,      203712388,      205647977,      207591745,      209543674, \
     211503745,      213471939,      215448239,      217432624,      219425078,      221425581,      223434114,      225450658, \
     227475195,      229507704,      231548168,      233596566,      235652880,      237717090,      239789177,      241869121, \
     243956902,      246052501,      248155899,      250267074,      252386009,      254512681,      256647072,      258789162, \
     260938929,      263096355,      265261418,      267434098,      269614375,      271802228,      273997636,      276200580, \
     278411037,      280628988,      282854411,      285087285,      287327590,      289575305,      291830407,      294092876, \
     296362691,      298639829,      300924271,      303215993,      305514976,      307821196,      310134632,      312455263, \
     314783066,      317118020,      319460102,      321809291,      324165564,      326528900,      328899275,      331276668, \
     333661056,      336052417,      338450728,      340855967,      343268111,      345687136,      348113022,      350545744, \
     352985279,      355431605,      357884699,      360344537,      362811097,      365284355,      367764287,      370250871, \
     372744083,      375243900,      377750297,      380263252,      382782740,      385308738,      387841223,      390380170, \
     392925555,      395477354,      398035544,      400600100,      403170998,      405748214,      408331723,      410921502, \
     413517525,      416119769,      418728209,      421342820,      423963577,      426590457,      429223433,      431862482, \
     434507579,      437158698,      439815815,      442478904,      445147941,      447822900,      450503756,      453190485, \
     455883059,      458581456,      461285647,      463995609,      466711316,      469432742,      472159862,      474892649, \
     477631079,      480375125,      483124761,      485879962,      488640701,      491406953,      494178692,      496955891, \
     499738524,      502526565,      505319988,      508118767,      510922874,      513732284,      516546970,      519366906, \
     522192065,      525022421,      527857946,      530698614,      533544399,      536395273,      539251210,      542112183, \
     544978164,      547849127,      550725045,      553605891,      556491637,      559382256,      562277721,      565178006, \
     568083081,      570992921,      573907498,      576826783,      579750751,      582679373,      585612621,      588550468, \
     591492886,      594439848,      597391326,      600347292,      603307718,      606272576,      609241838,      612215477, \
     615193464,      618175771,      621162371,      624153234,      627148334,      630147640,      633151127,      636158764, \
     639170524,      642186378,      645206299,      648230257,      651258223,      654290171,      657326070,      660365892, \
     663409609,      666457192,      669508613,      672563842,      675622850,      678685610,      681752091,      684822266, \
     687896105,      690973579,      694054660,      697139317,      700227523,      703319248,      706414463,      709513139, \
     712615247,      715720756,      718829639,      721941866,      725057407,      728176234,      731298316,      734423625, \
     737552130,      740683803,      743818614,      746956533,      750097531,      753241579,      756388645,      759538702, \
     762691720,      765847667,      769006516,      772168236,      775332797,      778500169,      781670323,      784843229, \
     788018857,      791197177,      794378159,      797561772,      800747988,      803936776,      807128106,      810321948, \
     813518272,      816717047,      819918244,      823121832,      826327782,      829536063,      832746644,      835959496, \
     839174588,      842391891,      845611373,      848833004,      852056754,      855282593,      858510490,      861740415, \
     864972338,      868206227,      871442053,      874679784,      877919392,      881160844,      884404110,      887649161, \
     890895965,      894144491,      897394710,      900646590,      903900100,      907155211,      910411892,      913670111, \
     916929839,      920191044,      923453695,      926717763,      929983216,      933250023,      936518154,      939787577, \
     943058263,      946330180,      949603297,      952877584,      956153010,      959429544,      962707154,      965985811, \
     969265483,      972546139,      975827749,      979110281,      982393705,      985677990,      988963104,      992249017, \
     995535697,      998823115,     1002111238,     1005400036,     1008689478,     1011979533,     1015270170,     1018561358, \
    1021853066,     1025145262,     1028437917,     1031730998,     1035024475,     1038318317,     1041612493,     1044906971, \
    1048201721,     1051496712,     1054791912,     1058087290,     1061382817,     1064678459,     1067974187,     1071269970, \
    1074565775,     1077861573,     1081157332,     1084453022,     1087748610,     1091044066,     1094339360,     1097634459, \
    1100929333,     1104223951,     1107518282,     1110812295,     1114105958,     1117399241,     1120692113,     1123984542, \
    1127276498,     1130567950,     1133858866,     1137149216,     1140438968,     1143728092,     1147016557,     1150304331, \
    1153591384,     1156877685,     1160163202,     1163447905,     1166731763,     1170014745,     1173296820,     1176577957, \
    1179858125,     1183137293,     1186415431,     1189692507,     1192968490,     1196243350,     1199517056,     1202789577, \
    1206060883,     1209330941,     1212599722,     1215867195,     1219133329,     1222398093,     1225661456,     1228923388, \
    1232183858,     1235442836,     1238700290,     1241956189,     1245210504,     1248463203,     1251714256,     1254963633, \
    1258211302,     1261457232,     1264701395,     1267943758,     1271184292,     1274422965,     1277659747,     1280894609, \
    1284127518,     1287358446,     1290587361,     1293814233,     1297039031,     1300261726,     1303482286,     1306700682, \
    1309916883,     1313130859,     1316342579,     1319552014,     1322759133,     1325963906,     1329166302,     1332366292, \
    1335563846,     1338758932,     1341951522,     1345141584,     1348329090,     1351514009,     1354696310,     1357875965, \
    1361052942,     1364227213,     1367398747,     1370567514,     1373733484,     1376896628,     1380056916,     1383214318, \
    1386368804,     1389520345,     1392668911,     1395814471,     1398956998,     1402096460,     1405232829,     1408366075, \
    1411496167,     1414623078,     1417746777,     1420867235,     1423984423,     1427098310,     1430208869,     1433316069, \
    1436419881,     1439520276,     1442617226,     1445710699,     1448800668,     1451887104,     1454969977,     1458049258, \
    1461124918,     1464196928,     1467265260,     1470329884,     1473390772,     1476447894,     1479501222,     1482550728, \
    1485596381,     1488638155,     1491676019,     1494709946,     1497739906,     1500765872,     1503787815,     1506805706, \
    1509819517,     1512829219,     1515834784,     1518836184,     1521833391,     1524826376,     1527815111,     1530799568, \
    1533779718,     1536755535,     1539726989,     1542694052,     1545656698,     1548614897,     1551568622,     1554517846, \
    1557462539,     1560402676,     1563338227,     1566269165,     1569195463,     1572117093,     1575034028,     1577946239, \
    1580853701,     1583756384,     1586654262,     1589547308,     1592435494,     1595318793,     1598197179,     1601070623, \
    1603939098,     1606802579,     1609661037,     1612514445,     1615362778,     1618206008,     1621044108,     1623877052, \
    1626704813,     1629527363,     1632344678,     1635156729,     1637963491,     1640764937,     1643561041,     1646351777, \
    1649137117,     1651917037,     1654691509,     1657460507,     1660224006,     1662981979,     1665734401,     1668481246, \
    1671222487,     1673958098,     1676688055,     1679412331,     1682130901,     1684843738,     1687550818,     1690252116, \
    1692947604,     1695637259,     1698321054,     1700998965,     1703670966,     1706337033,     1708997139,     1711651260, \
    1714299371,     1716941447,     1719577463,     1722207394,     1724831215,     1727448903,     1730060431,     1732665776, \
    1735264913,     1737857817,     1740444464,     1743024829,     1745598889,     1748166619,     1750727995,     1753282993, \
    1755831588,     1758373757,     1760909476,     1763438720,     1765961466,     1768477691,     1770987370,     1773490480, \
    1775986997,     1778476898,     1780960159,     1783436757,     1785906669,     1788369870,     1790826339,     1793276052, \
    1795718986,     1798155117,     1800584424,     1803006882,     1805422470,     1807831164,     1810232942,     1812627781, \
    1815015658,     1817396551,     1819770438,     1822137297,     1824497104,     1826849838,     1829195476,     1831533997, \
    1833865378,     1836189598,     1838506634,     1840816465,     1843119069,     1845414424,     1847702508,     1849983301, \
    1852256781,     1854522925,     1856781714,     1859033124,     1861277137,     1863513729,     1865742880,     1867964570, \
    1870178777,     1872385480,     1874584658,     1876776292,     1878960359,     1881136840,     1883305714,     1885466961, \
    1887620560,     1889766491,     1891904734,     1894035268,     1896158074,     1898273132,     1900380421,     1902479921, \
    1904571614,     1906655479,     1908731497,     1910799648,     1912859912,     1914912271,     1916956704,     1918993193, \
    1921021719,     1923042261,     1925054802,     1927059322,     1929055803,     1931044225,     1933024570,     1934996819, \
    1936960954,     1938916956,     1940864807,     1942804488,     1944735981,     1946659268,     1948574331,     1950481151, \
    1952379711,     1954269993,     1956151979,     1958025651,     1959890992,     1961747984,     1963596610,     1965436852, \
    1967268692,     1969092114,     1970907101,     1972713635,     1974511699,     1976301276,     1978082350,     1979854903, \
    1981618920,     1983374383,     1985121276,     1986859582,     1988589285,     1990310368,     1992022817,     1993726613, \
    1995421742,     1997108187,     1998785933,     2000454963,     2002115262,     2003766815,     2005409605,     2007043617, \
    2008668836,     2010285247,     2011892834,     2013491582,     2015081476,     2016662501,     2018234643,     2019797885, \
    2021352215,     2022897616,     2024434075,     2025961577,     2027480108,     2028989653,     2030490197,     2031981728, \
    2033464231,     2034937691,     2036402096,     2037857431,     2039303682,     2040740836,     2042168879,     2043587799, \
    2044997581,     2046398212,     2047789679,     2049171969,     2050545069,     2051908966,     2053263647,     2054609100, \
    2055945311,     2057272268,     2058589959,     2059898371,     2061197492,     2062487309,     2063767811,     2065038985, \
    2066300820,     2067553303,     2068796423,     2070030168,     2071254527,     2072469487,     2073675038,     2074871167, \
    2076057865,     2077235119,     2078402918,     2079561252,     2080710110,     2081849481,     2082979353,     2084099717, \
    2085210562,     2086311877,     2087403652,     2088485877,     2089558541,     2090621634,     2091675148,     2092719070, \
    2093753392,     2094778104,     2095793196,     2096798659,     2097794483,     2098780659,     2099757178,     2100724030, \
    2101681205,     2102628697,     2103566494,     2104494589,     2105412972,     2106321636,     2107220571,     2108109769, \
    2108989221,     2109858920,     2110718857,     2111569025,     2112409414,     2113240017,     2114060827,     2114871835, \
    2115673034,     2116464416,     2117245974,     2118017701,     2118779589,     2119531631,     2120273821,     2121006150, \
    2121728612,     2122441201,     2123143909,     2123836730,     2124519658,     2125192686,     2125855807,     2126509016, \
    2127152306,     2127785671,     2128409105,     2129022603,     2129626159,     2130219766,     2130803420,     2131377114, \
    2131940844,     2132494604,     2133038389,     2133572194,     2134096013,     2134609842,     2135113676,     2135607510, \
    2136091340,     2136565161,     2137028968,     2137482758,     2137926525,     2138360266,     2138783977,     2139197653, \
    2139601291,     2139994887,     2140378437,     2140751938,     2141115386,     2141468777,     2141812109,     2142145378, \
    2142468581,     2142781715,     2143084776,     2143377763,     2143660672,     2143933501,     2144196247,     2144448908, \
    2144691480,     2144923963,     2145146354,     2145358650,     2145560850,     2145752951,     2145934953,     2146106853, \
    2146268649,     2146420341,     2146561926,     2146693404,     2146814773,     2146926031,     2147027179,     2147118215, \
    2147199137,     2147269946,     2147330641,     2147381221,     2147421685,     2147452034,     2147472266,     2147482382, \
} 

#define HANN1024 {\
             0,          20252,          81009,         182267,         324023,         506272,         729007,         992219, \
       1295898,        1640034,        2024612,        2449619,        2915038,        3420852,        3967042,        4553587, \
       5180465,        5847653,        6555125,        7302854,        8090813,        8918971,        9787298,       10695761, \
      11644325,       12632954,       13661612,       14730259,       15838855,       16987359,       18175727,       19403914, \
      20671873,       21979558,       23326919,       24713904,       26140462,       27606539,       29112079,       30657026, \
      32241321,       33864905,       35527716,       37229692,       38970768,       40750879,       42569958,       44427935, \
      46324742,       48260305,       50234553,       52247411,       54298803,       56388652,       58516878,       60683401, \
      62888140,       65131012,       67411931,       69730813,       72087569,       74482110,       76914346,       79384186, \
      81891536,       84436302,       87018387,       89637695,       92294126,       94987580,       97717956,      100485150, \
     103289059,      106129576,      109006595,      111920006,      114869700,      117855566,      120877491,      123935360, \
     127029060,      130158472,      133323479,      136523962,      139759799,      143030869,      146337048,      149678212, \
     153054235,      156464988,      159910344,      163390173,      166904343,      170452721,      174035175,      177651568, \
     181301764,      184985626,      188703015,      192453789,      196237809,      200054931,      203905012,      207787905, \
     211703464,      215651542,      219631990,      223644658,      227689394,      231766046,      235874460,      240014480, \
     244185951,      248388716,      252622616,      256887490,      261183179,      265509521,      269866351,      274253506, \
     278670820,      283118126,      287595258,      292102045,      296638318,      301203905,      305798636,      310422335, \
     315074829,      319755943,      324465499,      329203320,      333969227,      338763041,      343584581,      348433664, \
     353310109,      358213730,      363144343,      368101762,      373085799,      378096268,      383132979,      388195741, \
     393284365,      398398657,      403538426,      408703476,      413893614,      419108643,      424348368,      429612589, \
     434901109,      440213727,      445550245,      450910460,      456294170,      461701171,      467131261,      472584235, \
     478059885,      483558007,      489078392,      494620833,      500185119,      505771042,      511378391,      517006954, \
     522656518,      528326872,      534017799,      539729087,      545460520,      551211881,      556982953,      562773519, \
     568583360,      574412258,      580259992,      586126341,      592011085,      597914001,      603834867,      609773459, \
     615729553,      621702926,      627693350,      633700601,      639724451,      645764674,      651821041,      657893325, \
     663981296,      670084724,      676203379,      682337031,      688485448,      694648398,      700825648,      707016966, \
     713222118,      719440870,      725672987,      731918234,      738176376,      744447177,      750730399,      757025807, \
     763333162,      769652226,      775982762,      782324530,      788677292,      795040807,      801414835,      807799136, \
     814193470,      820597594,      827011268,      833434249,      839866296,      846307165,      852756613,      859214398, \
     865680275,      872154001,      878635332,      885124022,      891619828,      898122504,      904631805,      911147486, \
     917669299,      924197001,      930730343,      937269081,      943812967,      950361754,      956915195,      963473043, \
     970035051,      976600971,      983170556,      989743557,      996319727,     1002898818,     1009480581,     1016064768, \
    1022651130,     1029239421,     1035829389,     1042420788,     1049013369,     1055606882,     1062201080,     1068795713, \
    1075390532,     1081985289,     1088579736,     1095173622,     1101766700,     1108358721,     1114949436,     1121538597, \
    1128125954,     1134711260,     1141294266,     1147874724,     1154452385,     1161027002,     1167598326,     1174166109, \
    1180730104,     1187290063,     1193845739,     1200396884,     1206943251,     1213484594,     1220020665,     1226551217, \
    1233076006,     1239594784,     1246107305,     1252613324,     1259112596,     1265604875,     1272089916,     1278567475, \
    1285037307,     1291499168,     1297952815,     1304398004,     1310834492,     1317262037,     1323680394,     1330089324, \
    1336488583,     1342877931,     1349257125,     1355625927,     1361984095,     1368331390,     1374667572,     1380992402, \
    1387305641,     1393607052,     1399896397,     1406173438,     1412437939,     1418689663,     1424928375,     1431153839, \
    1437365820,     1443564084,     1449748397,     1455918526,     1462074239,     1468215302,     1474341484,     1480452555, \
    1486548283,     1492628439,     1498692793,     1504741117,     1510773182,     1516788761,     1522787627,     1528769553, \
    1534734315,     1540681686,     1546611443,     1552523362,     1558417219,     1564292794,     1570149863,     1575988206, \
    1581807603,     1587607834,     1593388680,     1599149924,     1604891348,     1610612735,     1616313870,     1621994537, \
    1627654523,     1633293613,     1638911595,     1644508257,     1650083389,     1655636778,     1661168217,     1666677497, \
    1672164409,     1677628747,     1683070304,     1688488875,     1693884257,     1699256244,     1704604636,     1709929229, \
    1715229823,     1720506219,     1725758216,     1730985617,     1736188226,     1741365844,     1746518278,     1751645333, \
    1756746814,     1761822531,     1766872292,     1771895905,     1776893182,     1781863934,     1786807973,     1791725114, \
    1796615169,     1801477956,     1806313290,     1811120990,     1815900873,     1820652759,     1825376470,     1830071827, \
    1834738653,     1839376772,     1843986008,     1848566189,     1853117141,     1857638692,     1862130673,     1866592913, \
    1871025244,     1875427499,     1879799512,     1884141118,     1888452154,     1892732456,     1896981863,     1901200215, \
    1905387353,     1909543118,     1913667355,     1917759907,     1921820620,     1925849341,     1929845917,     1933810199, \
    1937742037,     1941641281,     1945507786,     1949341405,     1953141994,     1956909409,     1960643509,     1964344152, \
    1968011198,     1971644510,     1975243950,     1978809383,     1982340674,     1985837689,     1989300298,     1992728369, \
    1996121773,     1999480382,     2002804069,     2006092709,     2009346178,     2012564353,     2015747113,     2018894338, \
    2022005908,     2025081707,     2028121619,     2031125528,     2034093322,     2037024889,     2039920117,     2042778899, \
    2045601125,     2048386690,     2051135488,     2053847416,     2056522371,     2059160253,     2061760961,     2064324399, \
    2066850469,     2069339076,     2071790125,     2074203525,     2076579185,     2078917015,     2081216926,     2083478832, \
    2085702648,     2087888290,     2090035675,     2092144722,     2094215352,     2096247486,     2098241049,     2100195964, \
    2102112158,     2103989559,     2105828095,     2107627699,     2109388300,     2111109835,     2112792236,     2114435441, \
    2116039388,     2117604017,     2119129267,     2120615083,     2122061407,     2123468185,     2124835365,     2126162894, \
    2127450722,     2128698801,     2129907084,     2131075526,     2132204081,     2133292708,     2134341365,     2135350014, \
    2136318615,     2137247132,     2138135531,     2138983778,     2139791840,     2140559688,     2141287292,     2141974625, \
    2142621661,     2143228375,     2143794746,     2144320750,     2144806369,     2145251584,     2145656379,     2146020737, \
    2146344646,     2146628093,     2146871068,     2147073560,     2147235564,     2147357071,     2147438079,     2147478584, \
} 

#define HANN512 {\
             0,          81168,         324658,         730434,        1298435,        2028575,        2920743,        3974804, \
       5190600,        6567946,        8106634,        9806432,       11667082,       13688303,       15869790,       18211212, \
      20712216,       23372424,       26191434,       29168818,       32304128,       35596889,       39046603,       42652749, \
      46414782,       50332132,       54404208,       58630394,       63010051,       67542516,       72227105,       77063109, \
      82049798,       87186417,       92472189,       97906316,      103487976,      109216325,      115090498,      121109605, \
     127272737,      133578962,      140027327,      146616857,      153346555,      160215405,      167222367,      174366383, \
     181646371,      189061233,      196609846,      204291069,      212103742,      220046682,      228118690,      236318543, \
     244645004,      253096813,      261672693,      270371346,      279191457,      288131694,      297190705,      306367119, \
     315659550,      325066592,      334586824,      344218806,      353961082,      363812178,      373770607,      383834861, \
     394003421,      404274747,      414647287,      425119474,      435689723,      446356437,      457118003,      467972794, \
     478919170,      489955474,      501080039,      512291182,      523587209,      534966412,      546427070,      557967451, \
     569585811,      581280391,      593049425,      604891133,      616803725,      628785400,      640834346,      652948742, \
     665126756,      677366547,      689666264,      702024049,      714438032,      726906337,      739427078,      751998364, \
     764618292,      777284956,      789996440,      802750823,      815546175,      828380564,      841252047,      854158680, \
     867098511,      880069583,      893069936,      906097605,      919150618,      932227004,      945324785,      958441981, \
     971576608,      984726681,      997890213,     1011065212,     1024249687,     1037441644,     1050639090,     1063840028, \
    1077042464,     1090244400,     1103443841,     1116638792,     1129827258,     1143007244,     1156176758,     1169333809, \
    1182476408,     1195602567,     1208710303,     1221797634,     1234862581,     1247903168,     1260917424,     1273903383, \
    1286859079,     1299782555,     1312671857,     1325525036,     1338340148,     1351115257,     1363848431,     1376537745, \
    1389181280,     1401777125,     1414323376,     1426818135,     1439259515,     1451645632,     1463974616,     1476244602, \
    1488453735,     1500600170,     1512682069,     1524697607,     1536644966,     1548522340,     1560327934,     1572059964, \
    1583716654,     1595296243,     1606796980,     1618217126,     1629554955,     1640808753,     1651976818,     1663057462, \
    1674049010,     1684949799,     1695758182,     1706472525,     1717091207,     1727612624,     1738035184,     1748357313, \
    1758577448,     1768694046,     1778705577,     1788610527,     1798407398,     1808094710,     1817670998,     1827134814, \
    1836484728,     1845719325,     1854837209,     1863837003,     1872717345,     1881476893,     1890114322,     1898628327, \
    1907017621,     1915280934,     1923417019,     1931424644,     1939302599,     1947049694,     1954664756,     1962146634, \
    1969494198,     1976706337,     1983781960,     1990719997,     1997519399,     2004179139,     2010698210,     2017075625, \
    2023310422,     2029401656,     2035348408,     2041149779,     2046804890,     2052312888,     2057672939,     2062884233, \
    2067945982,     2072857421,     2077617808,     2082226423,     2086682568,     2090985570,     2095134780,     2099129568, \
    2102969332,     2106653491,     2110181488,     2113552789,     2116766885,     2119823290,     2122721542,     2125461203, \
    2128041857,     2130463117,     2132724614,     2134826008,     2136766980,     2138547237,     2140166511,     2141624555, \
    2142921151,     2144056101,     2145029234,     2145840403,     2146489486,     2146976383,     2147301023,     2147463355, \
} 

#define HANN256 {\
             0,         325932,        1303531,        2932203,        5210959,        8138416,       11712796,       15931930, \
      20793257,       26293824,       32430293,       39198938,       46595650,       54615938,       63254933,       72507392, \
      82367695,       92829858,      103887529,      115533994,      127762183,      140564674,      153933692,      167861122, \
     182338508,      197357062,      212907666,      228980879,      245566943,      262655788,      280237041,      298300027, \
     316833781,      335827051,      355268306,      375145743,      395447296,      416160638,      437273195,      458772150, \
     480644450,      502876818,      525455755,      548367555,      571598307,      595133909,      618960071,      643062330, \
     667426053,      692036448,      716878575,      741937352,      767197567,      792643883,      818260853,      844032925, \
     869944451,      895979703,      922122873,      948358090,      974669427,     1001040911,     1027456531,     1053900250, \
    1080356016,     1106807766,     1133239442,     1159634997,     1185978406,     1212253677,     1238444859,     1264536049, \
    1290511410,     1316355170,     1342051641,     1367585221,     1392940411,     1418101817,     1443054163,     1467782300, \
    1492271218,     1516506048,     1540472077,     1564154757,     1587539708,     1610612735,     1633359830,     1655767183, \
    1677821191,     1699508464,     1720815837,     1741730374,     1762239377,     1782330397,     1801991235,     1821209956, \
    1839974892,     1858274651,     1876098123,     1893434488,     1910273220,     1926604098,     1942417206,     1957702945, \
    1972452035,     1986655521,     2000304781,     2013391528,     2025907818,     2037846051,     2049198981,     2059959714, \
    2070121719,     2079678825,     2088625231,     2096955505,     2104664590,     2111747806,     2118200852,     2124019812, \
    2129201152,     2133741727,     2137638780,     2140889945,     2143493250,     2145447112,     2146750346,     2147402161, \
} 

#define HANN128 {\
             0,        1313813,        5252037,       11805035,       20956770,       32684846,       46960564,       63748987, \
      83009031,      104693565,      128749523,      155118035,      183734573,      214529108,      247426281,      282345586, \
     319201571,      357904042,      398358287,      440465310,      484122066,      529221721,      575653908,      623304999, \
     672058385,      721794757,      772392403,      823727501,      875674426,      928106056,      980894080,     1033909319, \
    1087022034,     1140102250,     1193020071,     1245645999,     1297851248,     1349508064,     1400490033,     1450672395, \
    1499932345,     1548149335,     1595205371,     1640985297,     1685377084,     1728272097,     1769565365,     1809155835, \
    1846946625,     1882845253,     1916763869,     1948619469,     1978334097,     2005835035,     2031054986,     2053932231, \
    2074410785,     2092440535,     2107977359,     2120983235,     2131426336,     2139281105,     2144528321,     2147155143, \
} 

#define HANN64 {\
             0,        5335664,       21289629,       47703337,       84314275,      130758590,      186574695,      251207866, \
     324015749,      404274747,      491187209,      583889360,      681459886,      782929085,      887288513,      993500997, \
    1100510950,     1207254860,     1312671857,     1415714260,     1515357988,     1610612735,     1700531819,     1784221581, \
    1860850277,     1929656335,     1989955931,     2041149779,     2082729092,     2114280636,     2135490838,     2146148901, \
} 

#define HANN32 {\
             0,       21979558,       87018387,      192453789,      333969227,      505771042,      700825648,      911147486, \
    1128125954,     1342877931,     1546611443,     1730985617,     1888452154,     2012564353,     2098241049,     2141974625, \
} 

#endif /*FFT_HANN_Q31_H */  

/********************************* END OF FILE *********************************/
